package main

import (
	"log"

	"away.wei/minidevpos/core"
	"away.wei/minidevpos/devops"
	"away.wei/minidevpos/global"
	"golang.org/x/sync/errgroup"
)

var (
	g errgroup.Group
)

// @title           Minidevops API
// @version         1.0
// @description     轻量级自动化构建部署服务
// @host      localhost:8080
// @securityDefinitions.basic  BasicAuth

func main() {
	global.New()
	devops.DevOpsApp.Listener()

	g.Go(func() error {
		core.CoreGroupApp.NewServer()
		core.CoreGroupApp.AddSwagger()
		core.CoreGroupApp.AddCore()
		core.CoreGroupApp.AddStatic("/log", global.Abpath+"/log")
		core.CoreGroupApp.AddWeb()
		core.CoreGroupApp.AddWebSocket("/ws")
		return core.CoreGroupApp.Listen(global.Settings.ToHost())
	})

	if err := g.Wait(); err != nil {
		log.Fatal(err)
	}

}
